Semiconductor devices are commonly fabricated using lithography techniques, where layers of material are deposited onto or etched away from a wafer to form devices and circuits. Typically, after a layer of material is deposited or etched and before the wafer is further processed, the wafer is measured and realigned with an alignment tool to reduce any errors resulting from misalignment. As semiconductor devices shrink in size, the requirements for controlling the misalignment errors have become more stringent. Many systems in existence today employ an overlay registration technique to reduce overlay misalignment errors.
FIG. 1 is a diagram illustrating a wafer used in an overlay registration process. FIG. 100 includes a number of dies 102. On each die, there are a number of test patterns 106. On each die there are four test patterns that are measured by the alignment tool, resulting in four overlay misalignment vectors 104. The misalignment vectors are typically calculated as the summations of the interfield errors (also referred to as grid errors) and intrafield errors (also referred to as reticle errors).
In Proceedings of SPIE, Microlithography 2003, 5044-2 entitled “OPTIMAL MODEL-PREDICTIVE CONTROL OF OVERLAY LITHOGRAPHY IMPLEMENTED IN AN ASIC FAB” by Scott Middlebrooks, which is incorporated herein by reference for all purposes, Middlebrooks describes a model predictive controller that estimates system states and regulates the states to desired targets. The controller employs a Kalman filter to estimate the current values of the system states given measured outputs. Given an optimal estimate, a regulator is used to drive the estimated system states to desired targets. The controller attempts to reject the process disturbances in one input move, and is known as a “deadbeat” controller.
Although this deadbeat controller, which includes using a Kalman filter for estimating the states, is useful in misalignment correction, several issues remain. It would be useful to take into account the constraints of the system, such as the range of valid inputs, and states. A common approach to handling values that are out of bound is to clip these values; however, clipping often results in sub-optimal selection of values. Although estimating states using a Kalman filter works well for linear systems, it may introduce errors and provide sub-optimal and unstable state estimates for nonlinear systems. It would be useful to have a controller that can handle both input and state constraints as well as being able to handle both linear and non-linear systems.